package br.com.aquinoevasconcelos.util;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 * @author Paulo Roberto
 * @email paulolima2008@hotmail.com
 * @version 1.0 @ Propriedade da Techcode
 */
public class Validacao {
	
	// metodo para verificar se o campo esta vazio
	//-------------------------------------------------------------
	public boolean campoVazio(String campo){
		
		if(campo.trim().isEmpty()){
			return true;
		}
		return false;
	}
	//-------------------------------------------------------------
	// metodo para verificar se campo tem numero 
	//-------------------------------------------------------------
	public boolean campoTemNumero(String campo){
		
		
		  for (int i = 0; i < campo.length(); i++) {
		      if (Character.isDigit(campo.charAt(i))) 
		    	  
		         return true;
		   }
		  
		   return false;
		}
		
	
	//--------------------------------------------------------------
	// validar E-mail 
	//--------------------------------------------------------------
	public boolean validarEmail(String campo){
		
		// Configura a seq��ncia padr�o de e-mail
		Pattern p = Pattern.compile("^[\\w-]+(\\.[\\w-]+)*@([\\w-]+\\.)+[a-zA-Z]{2,7}$");
		
		// Joga a string com o padr�o
		Matcher m = p.matcher(campo);
		
		if (m.find()){
			// E-mail valido
			return false;
		}
		else{
			// E-mail invalido
			return true;
		}
		
	}
	//--------------------------------------------------------------
	// Verificar quantidade caracter no campo
	//--------------------------------------------------------------
	public boolean verificarQuantidadeCaracter(String campo,int valor){
		
		int qtd = campo.length();
		
		if (qtd > valor){
				// quantidade maior 'erro'
				return true;
		}
		
		// menor ou igual 'ok'
		return false;
	}
	//----------------------------------------------------------------
	// Mostar Data e hora do sistema 
	//----------------------------------------------------------------
	public String eventoDataHora(){
		
		String dataHora = null;
		SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm");
		dataHora = sdf.format(new Date());
		
		return dataHora;
	}
	//----------------------------------------------------------------
	// Mostar Data  do sistema 
	//----------------------------------------------------------------
	public String eventoDataSistema(){
		String dataSistema = null;
		
		SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
		dataSistema = sdf.format(new Date());
		return dataSistema;
	}

	//----------------------------------------------------------------
	// Mostar Hora do sistema
	//----------------------------------------------------------------
	public String getHora() {  
		  
		// cria um StringBuilder  
		StringBuilder sb = new StringBuilder();  
		  
		// cria um GregorianCalendar que vai conter a hora atual  
		GregorianCalendar d = new GregorianCalendar();  
		  
		// anexa do StringBuilder os dados da hora  
		sb.append( d.get( GregorianCalendar.HOUR_OF_DAY ) );  
		sb.append( ":" );  
		sb.append( d.get( GregorianCalendar.MINUTE ) );  
		//sb.append( ":" );  
		//sb.append( d.get( GregorianCalendar.SECOND ) );  
		  
		// retorna a String do StringBuilder  
		return sb.toString(); 
	}
}
